import com.mysql.jdbc.jdbc2.optional.MysqlDataSource;

import javax.sql.DataSource;
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.SQLException;
import java.util.Scanner;

public class TestJDBCInsert {
    public static void main(String[] args) throws SQLException {
        //用户自行输入
        Scanner scanner = new Scanner(System.in);
        System.out.println("请输入一个学号: ");
        int id = scanner.nextInt();
        System.out.println("请输入一个姓名: ");
        String name = scanner.next();
        //1.创建数据源.数据源描述了你的数据库在哪里
        DataSource dataSource = new MysqlDataSource();//向上转型
        ((MysqlDataSource)dataSource).setUrl("jdbc:mysql://127.0.0.1:3306/jdbc?characterEncoding=utf8&useSSL=false");//向下转型
        ((MysqlDataSource)dataSource).setUser("root");
        ((MysqlDataSource)dataSource).setPassword("080912");
        //2.和数据库服务器建立连接
        Connection connection = dataSource.getConnection();
        //3.构造一个sql
        String sql = "insert into student values (?,?)";
        //把字符串转成一个SQL语句
        PreparedStatement preparedStatement = connection.prepareStatement(sql);
        preparedStatement.setInt(1,id);
        preparedStatement.setString(2,name);
        //4.把构造好的sql发送给mysql服务器
        int n = preparedStatement.executeUpdate();//n就是这个操作影响的行数
        System.out.println("n = "+n);
        //5.释放必要的资源
        preparedStatement.close();
        connection.close();


    }
}
